Digital-t0-analog converter using different multiplicators between first and second portions of a data holding period

ABSTRACT

It is object to provide a digital-to-analog converter capable of generating an output waveform having less distortion without increasing the operating speed of components. A D/A converter comprises four D flip-flops  10 - 1  through  10 - 4,  four multipliers  12 - 1  through  12 - 4,  three adders  14 - 1  through  14 - 3 , a D/A converter  16,  and two integrating circuits  18 - 1  and  18 - 2.  Input data is fed sequentially to the four D flip-flops and held therein. The multiplier multiplies the data held in the respective D flip-flops by different multiplicators in the first half and second half of one clock period and the multiplication results are added by the three adders. A stepwise analog voltage corresponding to the sum is generated by the D/A converter  16  and integrated twice by means of the two integrating circuits  18 - 1  and  18 - 2.

TECHNICAL FIELD

[0001] The present invention relates to a digital-to-analog converter for converting discrete digital data into continuous analog signals. In this specification, it is assumed that a case where function values have finite values except zero in a local region and become zero in regions different from the region is called a “local support.”

BACKGROUND ART

[0002] A recent digital audio apparatus, for example, a CD (Compact Disk) player, uses a D/A (digital-to-analog) converter to which an over-sampling technique is applied to obtain a continuous analog audio signal from discrete music data (digital data). Such a D/A converter generally uses a digital filter to raise a pseudo sampling frequency by interpolating input digital data, and outputs smooth analog audio signals by passing each interpolation value through a low-pass filter after generating a staircase signal waveform with each interpolation value held by the sample holding circuit.

[0003] A data interpolation system disclosed in W099/38090 is well known as a method of interpolating data into discrete digital data. In this data interpolation system, differentiation can be performed only once in the whole range, and a sampling function is used such that two sampling points each before and after an interpolation position, that is, a total of four sampling points, can be considered. Since the sampling function has values of a local support unlike the sinc function defined by sin (πft)/(πft) where f indicates a sampling frequency, there is a merit that no truncation errors occur although only four pieces of digital data are used in the interpolating operation.

[0004] Generally, oversampling is performed by using a digital filter in which the waveform data of the above mentioned sampling function is set to a tap coefficient of an FIR (finite impulse response) filter.

[0005] If the oversampling technology of performing an interpolating operation for discrete digital data using the above mentioned digital filter, a low pass filter having a moderate attenuation characteristic can be used. Therefore, the phase characteristic with a low pass filter can approach a linear phase characteristic, and the sampling aliasing noise can be reduced. These effects are more outstanding with a higher oversampling frequency. However, if the sampling frequency becomes higher, the performance of the digital filter and the sample hold circuit is also sped up. Therefore, it is necessary to use expensive parts appropriate for the quick performance, thereby increasing the cost of the required parts. In addition, when the sampling frequency is high (for example, several MHz) as in the case of image data, it is necessary to configure a digital filter or a sample hold circuit using parts operable at several tens MHz to several hundreds MHz, which cannot be easily realized.

[0006] Additionally, although the oversampling technology is used, a smooth analog signal is generated by passing a signal waveform in the form of steps through a low pass filter. Therefore, a desired linear phase characteristic cannot be realized so far as a low pass filter is used, and an output waveform is distorted.

BRIEF SUMMARY OF THE INVENTION

[0007] The present invention has been achieved to solve the above mentioned problems, and aims at providing a digital-to-analog converter capable of obtaining an output waveform having less distortion without speeding up the operations of the parts.

[0008] In the digital-to-analog converter according to the present invention, a plurality of data holding unit hold plural pieces of digital data input at predetermined intervals, and a plurality of multiplying unit perform multiplying processes using respective multiplicators for the first half and the second half of the data holding period on the digital data held in the respective data holding unit. After stepwise voltage waveform generation unit have generated a stepwise analog voltage corresponding to the digital data obtained by adding unit adding up multiplication results, a plurality of integrating unit perform analog integration several times, and continuous analog signals smoothly connecting voltage values corresponding to sequentially input respective digital data are generated. Thus, the multiplication results corresponding to sequentially input plural pieces of digital data are added up, and then the addition result is converted into an analog voltage and integrated, thereby obtaining continuously changing analog signals. As a result, it is not necessary to use a low pass filter to obtain a final analog signal, a group delay characteristic is not deteriorated by different phase characteristics depending on the applicable signal frequencies, and therefore an output waveform can be obtained with less distortion. As compared with the conventional method used with oversampling, the cost of parts can be reduced because it is not necessary to speed up the operations of the parts and to use expensive parts.

[0009] Each of the multiplicators used in the multiplying processes by the plurality of multiplying unit is desired to correspond to each of the values of step functions obtained by differentiating plural times piecewise polynomials for a predetermined sampling function configured by the piecewise polynomials. That is, by integrating plural times the above mentioned step function, a waveform corresponding to the predetermined sampling function can be obtained. Therefore, a convolution operation using a sampling function can be equivalently realized by generating a step function. As a result, the contents of the entire process can be simplified, and the number of processes required converting digital data into analog signals can be successfully reduced.

[0010] In addition, the above mentioned step function is desired to equally set the positive and negative regions. Thus, the divergence of integration results of the integrating unit can be prevented.

[0011] Furthermore, it is desirable that the above mentioned sampling function has a value of local support with the whole range differentiable only once. It is assumed that a natural phenomenon can be approximated if the whole range is differentiable only once. By setting a smaller number of times of differentiation, the times of the analog integration performed by the integrating unit can be reduced, thereby successfully simplifying the configuration.

[0012] It is further desirable that the above mentioned step function contains an area of eight piecewise sections in equal width weighted by −1, +3, +5, −7, −7, +5, +3, and −1 in a predetermined range corresponding to five pieces of digital data arranged at equal intervals, and that every two of the eight weight coefficients are set as the multiplicators in the respective multiplying unit. Since simple weight coefficients represented by integers can be used as the multiplicators in each of the respective multiplying unit, the multiplying process can be simplified.

[0013] Especially, it is desirable that a multiplying process performed in each of the plurality of multiplying unit is represented by adding digital data to an operation result of the exponentiation of 2 by a bit shift. Since the multiplying process can be replaced with a bit shift process and an adding operation, the configuration can be simplified and the process can be sped up by simplifying the contents of the processes.

[0014] It is also desirable that the times of the analog integration is two, and an analog signal whose voltage level changes like a quadric function is output from the integrating unit. By interpolating an analog signal which changes like a quadric function into a voltage value corresponding to discrete digital data, a desired output waveform can be obtained without unnecessary high frequency components, etc.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015]FIG. 1 is a diagram showing a sampling function used in an interpolating operation in the D/A converter according to an embodiment;

[0016]FIG. 2 is a diagram showing a relationship between the sampling values with an interpolation values;

[0017]FIG. 3 is a diagram showing a waveform obtained by differentiating once the sampling function shown in FIG. 1;

[0018]FIG. 4 is a diagram showing a the waveform obtained by further differentiating the polygonal line function shown in FIG. 3;

[0019]FIG. 5 is a diagram showing a the configuration of a D/A converter of an embodiment;

[0020]FIG. 6 is a block diagram showing an example of a practical configuration of an integrating circuit;

[0021]FIGS. 7A through 7L are charts showing the operation timings of the D/A converter of an embodiment;

[0022]FIG. 8 is a diagram showing a detailed configuration of the multiplier;

[0023]FIG. 9 is a diagram showing a detailed configuration of the multiplier;

[0024]FIG. 10 is a diagram showing a detailed configuration of the multiplier;

[0025]FIG. 11 is a diagram showing a detailed configuration of the multiplier;

[0026]FIG. 12 is a diagram showing a detailed configuration of the multiplier;

[0027]FIG. 13 is a diagram showing a detailed configuration of the multiplier;

[0028]FIG. 14 is a diagram showing a detailed configuration of the multiplier; and

[0029]FIG. 15 is a diagram showing a detailed configuration of the multiplier.

BEST MODE FOR CARRYING OUT THE INVENTION

[0030] An embodiment of the D/A converter according to the present invention is described below in detail by referring to the attached drawings. FIG. 1 shows a sampling function used in an interpolating operation in the D/A converter according to the present embodiment. The sampling function H(t) is disclosed by W099/38090, and represented by the following expressions.

(−t²−4t−4)/4 ;−2≦t<−{fraction (3/2 )}

(3t²+8t+5)/4 ;−{fraction (3/2)}≦t<−1

(5t²+12t+7)/4 ;−1≦t<−{fraction (1/2 )}

(−7t²+4)/4 ;−½≦t<0

(−7t²+4)/4 ;0≦t<½

(5t²−12t+7)/4 ;½≦t<1

(3t²−8t+5)/4 ;1≦t<{fraction (3/2)}

(−t²+4t−4)/4 ;{fraction (3/2)}≦t≦2   (1)

[0031] where t=0, ±1, ±2 indicates the sampling position. The sampling function H(t) shown in FIG. 1 can be differentiated only once in the whole range, and is a function of a local support converging into 0 with the sampling position t=±2. By performing an overlapping process using the sampling function H(t) based on each sampling value, the interpolating process can be performed using a function differentiable only once in the sampling values.

[0032]FIG. 2 shows the relationship between the sampling values and the interpolation values. As shown in FIG. 2, assume that four sampling positions are t1, t2, t3, and t4, and the distance between two adjacent sampling positions is 1. The interpolation value y corresponding to the interpolation position t0 between the sampling positions t2 and t3 is obtained by the following equation.

y=Y(t 1)·H(1+a)+Y(t 2)·H(a)+Y(t 3)·H(1+a)+Y(t 4)·H(2−a)   (2)

[0033] where Y(t) indicates each sampling value at the sampling position t. Each of 1+a, a, 1 −a, and 2 −a indicates the distance between the interpolation position t0 and each of the sampling positions t1 through t4.

[0034] As described above, by performing a convolution operation by computing the value of the sampling function H(t) corresponding to each sampling value, an interpolation value of sampling values can be obtained theoretically. However, the sampling function shown in FIG. 1 is a quadric piecewise polynomial differentiable only once in the whole range. Using this feature, the interpolation value can be obtained in another equivalent process procedure.

[0035]FIG. 3 shows a waveform obtained by differentiating once the sampling function shown in FIG. 1. The sampling function H(t) shown in FIG. 1 is a quadric piecewise polynomial differentiable once in the entire range. Therefore, by performing the differentiation once, a polygonal line function formed by the waveform of a continuous polygonal line as shown in FIG. 3 can be obtained.

[0036]FIG. 4 shows the waveform obtained by further differentiating the polygonal line function shown in FIG. 3. However, the polygonal line waveform contains a plurality of corner points, and the differentiation cannot be performed in the whole range. Therefore, the differentiation is performed on the linear portion between two adjacent corner points. By differentiating the polygonal line waveform shown in FIG. 3, the step function formed by the stepwise waveform as shown in FIG. 4 can be obtained.

[0037] Thus, the above mentioned sampling function H(t) is once differentiated in the entire range to obtain a polygonal line function. By further differentiating each of the linear portions of the polygonal line function, a step function can be obtained. Therefore, in the reverse order, by generating the step function shown in FIG. 4, and integrating it twice, the sampling function H(t) shown in FIG. 1 can be obtained.

[0038] In the step function shown in FIG. 4, the positive and negative regions are set equal to each other, and the sum of the regions equals 0. That is, by integrating such a step function plural times, a sampling function of local support, as shown in FIG. 1, whose differentiability in the whole range is guaranteed can be obtained.

[0039] In computing the interpolation value in the convolution operation shown by the equation (2), the value of the sampling function H(t) is multiplied by each sampling value. If the sampling function H(t) is obtained by integrating twice the step function shown in FIG. 4, the value of the sampling function obtained in the integrating process is multiplied by each sampling value, or equivalently. when a step function before the integration processing is generated, an interpolation value can be obtained by generating a step function by multiplication by each sampling value, and performing twice the integrating process on the result obtained in the convolution operation using the step function. The D/A converter according to the present embodiment obtains an interpolation value as described above. This process is described below in detail.

[0040]FIG. 5 shows the configuration of the D/A converter according to the present embodiment. The D/A converter shown in FIG. 5 is configured by four D flip-flops (D-FF) 10-1, 10-2, 10-3, and 10-4, four multipliers 12-1, 12-2, 12-3, and 12-4, three adders (ADD) 14-1, 14-2, and 14-3, aD/A converter 16, and two integrating circuits 18-1 and 18-2.

[0041] The four serially connected D flip-flops 10-1 through 10-4 hold data synchronous with a clock signal CLK, sequentially fetch the digital data input to the first D flip-flop 10-1, and hold the value. For example, assuming that data D₁, D₂, D₃, D₄, . . . are sequentially input into the first D flip-flop 10-1, the third, second, and first input data D₃, D₂, and D₁ are respectively held in the second, third, and fourth D flip-flops 10-2, 10-3, and 10-4 at the timing of holding the fourth input data D₄ in the first D flip-flop 10-1.

[0042] Each of the four multipliers 12-1 through 12-4 has two types of multiplicators, and performs different multiplying processes between the first half and the second half of each period of the clock signal CLK. For example, the multiplier 12-1 performs the multiplying process using a multiplicator of −1 in the first half of each period of the clock signal CLK, and performs the multiplying process using a multiplicator of +3 in the second half. The multiplier 12-2 performs the multiplying process using a multiplicator of +5 in the first half of each period of the clock signal CLK, and performs the multiplying process using a multiplicator of −7 in the second half. The multiplier 12-3 performs the multiplying process using a multiplicator of −7 in the first half of each period of the clock signal CLK, and performs the multiplying process using a multiplicator of +5 in the second half. The multiplier 12-4 performs the multiplying process using a multiplicator of +3 in the first half of each period of the clock signal CLK, and performs the multiplying process using a multiplicator of −1 in the second half.

[0043] Each value of the step function shown in FIG. 4 can be obtained by differentiating twice each piecewise polynomial in the above mentioned expressions (1) as follows.

−1 ;−2≦t<−{fraction (3/2)}

+3 ;−{fraction (3/2)}≦t<−1

+5 ;−1≦t<−½

−7 ;−½≦t<0

−7 ;0≦t<½

+5 ;½≦t<1

+3 ;1≦t<{fraction (3/2)}

−1 ;{fraction (3/2)}≦t≦2

[0044] Regarding the portion where the sampling position t ranges from −2 to −1, the values of the step function are −1 in the first half, and +3 in the second half. These values correspond to the multiplicators of the multiplier 12-1. Similarly, regarding the portion where the sampling position t ranges from −1 to 0. the values of the step function are +5 in the first half, and −7 in the second half. These values correspond to the multiplicators of the multiplier 12-2. Regarding the portion where the sampling position t ranges from 0 to +1, the values of the step function are −7 in the first half, and +5 in the second half. These values correspond to the multiplicators of the multiplier 12-3. Regarding the portion where the sampling position t ranges from +1 to +2, the values of the step function are +3 in the first half, and −1 in the second half. These values correspond to the multiplicators of the multiplier 12-4.

[0045] Each of the three adders 14-1 through 14-3 is used to add up the multiplication results of the above mentioned four multipliers 12-1 through 12-4. The adder 14-1 adds up the multiplication results of the two multipliers 12-1 and 12-2. The adder 14-2 adds up the multiplication result of the multiplier 12-3 and the addition result of the adder 14-1. Furthermore, the adder 14-3 adds up the multiplication result of the multiplier 12-4 and the addition result of the adder 14-2. Using these three adders 14-1 through 14-3, the multiplication results of the four multipliers 12-1 through 12-4 are added up. Since multiplying processes are performed using different multiplicators between the first half and the second half of each period of the clock signal CLK in each of the multipliers 12-1 through 12-4 as described above, the output value of the adder 14-3 obtained by adding up themultiplication results also refers to the digital data in the form of steps having different values between the first half and the second half of each period of the clock signal CLK.

[0046] According to the present embodiment, four multiplication results of the four multipliers 12-1 through 12-4 are added up by the three adders 14-1 through 14-3, but the number of adders can be reduced by using an adder having three or more input terminals.

[0047] The D/A converter 16 generates an analog voltage corresponding to the stepwise digital data output by the adder 14-3. Since the D/A converter 16 generates a constant analog voltage proportional to the value of the input digital data, an output voltage in the form of steps having different voltage values between the first half and the second half of each period of the clock signal CLK can be obtained.

[0048] The two serially connected integrating circuits 18-1 and 18-2 perform two integrating processes on the output voltage in the form of steps appearing at the output terminal of the D/A converter 16. A linearly changing output voltage (like a linear function) is obtained from the integrating circuit 18-1 at the first stage, and an output voltage changing like a quadric function is obtained from the integrating circuit 18-2 at the subsequent stage. Thus, when plural pieces of digital data are input at predetermined intervals to the first D flip-flop 10-1, continuous analog signals connected through a smooth curve differentiable only once in the voltage values corresponding to respective pieces of digital data are obtained from the integrating circuit 18-2 at the subsequent stage.

[0049]FIG. 6 shows an example of a practical configuration of an integrating circuit. In FIG. 6, an example of a practical configuration of the integrating circuit 18-1, but the integrating circuit 18-2 can also be realized with the similar configuration. The integrating circuit 18-1 shown in FIG. 6 is a common analog integrating circuit comprising an operational amplifier 181, a capacitor 182, and a resistance 183. A predetermined integrating operation is performed on the voltage applied to one terminal of the resistance 183.

[0050] The above mentioned D flip-flops 10-1 through 10-4 correspond to a plurality of data holding unit, the multipliers 12-1 through 12-4 correspond to a plurality of multiplying unit, the adders 14-1 through 14-3 correspond to adding unit, the D/A converter 16 corresponds to a stepwise voltage waveform generation unit, and the integrating circuits 18-1 and 18-2 correspond to integrating unit.

[0051]FIGS. 7A through 7L show operation timings of the D/A converter according to the present embodiment. In synchronization with the rise of each period of the clock signal CLK shown in FIG. 7A, the data D₁, D₂, D₃, D₄, . . . are sequentially input into the first D flip-flop 10-1. FIGS. 7B to 7E show the contents of the data held in the D flip-flops 10-1 through 10-4 respectively. In the explanation below, for example, the timing of one clock of holding the fourth input data D₄ in the first D flip-flop 10-1 is considered.

[0052] At the timing of holding the fourth input data D₄ in the first D flip-flop 10-1, the third input data D₃ is held in the second D flip-flop 10-2, the second input data D₂ is held in the third D flip-flop 10-3, and the first input data D₁ is held in the fourth D flip-flop 10-4.

[0053] The multiplier 12-1 receives the data D₄ held in the first D flip-flop 10-1, outputs in the first half of one clock period the multiplication result of −D₄ obtained by multiplying the input data D₄ by −1, and outputs in the second half the multiplication result of +3D₄ obtained by multiplying the input data D₄ by +3 (FIG. 7F). Similarly, the multiplier 12-2 receives the data D₃ held in the second D flip-flop 10-2, outputs in the first half of one clock period the multiplication result of +5D₃ obtained by multiplying the input data D₃ by +5, and outputs in the second half the multiplication result of −7D₃ obtained by multiplying the input data D₃ by −7 (FIG. 7G). The multiplier 12-3 receives the data D₂ held in the third D flip-flop 10-3, outputs in the first half of one clock period the multiplication result of −7D₂ obtained by multiplying the input data D₂ by −7, and outputs in the second half the multiplication result of +5D₂ obtained by multiplying the input data D₂ by +5 (FIG. 7H). The multiplier l2-4 receives the data D₁ held in the fourth D flip-flop 10-4, outputs in the first half of one clock period the multiplication result of +3D₁ obtained by multiplying the input data D₁ by +3, and outputs in the second half the multiplication result of −D₁ obtained by multiplying the input data D₁ by −1 (FIG. 7I).

[0054] The three adders 14-1 through 14-3 add up the four multiplication results obtained by the four multipliers 12-1 through 12-4. Therefore, in the first half of one clock period, the adder 14-3 outputs the addition result (−D₄+5D₃−7D₂+3D₁) obtained by adding up the multiplication results obtained in the first half of one clock period by the four multipliers 12-1 through 12-4. In the second half of one clock period, the adder 14-3 outputs the addition result (3D₄−7D₃+5D₂ −D₁) obtained by adding up the multiplication results obtained in the second half of one clock period by the four multipliers 12-1 through 12-4.

[0055] Thus, when the adder 14-3 sequentially outputs a step-shaped addition result, the D/A converter 16 generates an analog voltage based on the addition result (digital data). Since the D/A converter 16 generates a constant analog voltage proportional to the value of the input digital data, an output waveform formed by a changing voltage level stepwise corresponding the input digital data can be obtained (FIG. 7J).

[0056] When the D/A converter 16 outputs a waveform having a stepwise voltage level, the integrating circuit 18-1 at the preceding stage outputs a polygonal line waveform by integrating the waveform (FIG. 7K), the integrating circuit 18-2 at the subsequent stage further integrates the polygonal line waveform, and generates an output voltage connected through a smooth curve differentiable only once in the voltage values corresponding to the digital data D₂ and D₃ (FIG. 7L).

[0057] Thus, the D/A converter according to the present embodiment sequentially holds the input digital data in the four serially connected D flip-flops 10-1 through 10-4, respectively corresponding to which four multipliers 12-1 through 12-4 perform different multiplying processes between the first half and the second half of one clock period as data holding period. Then, the adders 14-1 through 14-3 add the multiplication results. The D/A converter 16 generates an analog voltage corresponding to the addition result, and then the two integrating circuits 18-1 and 18-2 perform two integrating processes, thereby generating continuous analog signals smoothly connecting the voltage values corresponding to the input digital data.

[0058] The continuous analog signals can be obtained by obtaining two multiplication results having different values between the first half and the second half of one clock period corresponding to the four pieces of input digital data, adding them up, generating an analogvoltage corresponding to the addition result, and performing two integrating processes. Therefore, the conventional sample hold circuit or low pass filter is not required, thereby preventing deterioration in a linear phase characteristic, reducing the distortion of an output waveform, and realizing a desired group delay characteristic.

[0059] Furthermore, since the conventional oversampling process is not performed, it is necessary only to guarantee a predetermined operation speed depending on the time intervals of input digital data, and since it is unnecessary to perform any high speed signal processing, no expensive parts are required. For example, the conventional D/A converter performs the oversampling process to obtain 1024 pseudo-frequencies as sampling frequencies, thereby requiring the operation speeds of respective parts depending on the pseudo frequencies. On the other hand, it is necessary for the D/A converter according to the present embodiment only to operate each multiplier or each adder at a frequency two times as high as the sampling frequency, and consequently it is possible to reduce the operation speeds of the respective parts to a large extent.

[0060] Described below is an example of a detailed configuration of each part of the D/A converter according to the present embodiment. FIGS. 8 through 11 show the configurations of the four multipliers 12-1 through 12-4.

[0061] As shown in FIG. 8, the multiplier 12-1 comprises two multipliers 121 a and 121 b in which values of multiplicator are fixed, and a selector 121 c. One multiplier 121 a performs a multiplying process using a multiplicator of −1, and the other multiplier 121 b performs a multiplying process using a multiplicator of +3. The selector 121 c receives the multiplication results of the two multipliers 121 a and 121 b, outputs a multiplication result obtained from one multiplier 121 a using a multiplicator of −1 when the clock signal CLK input to the control terminal S indicates a high level, that is, in the first half of one clock period, and outputs a multiplication result obtained from the other multiplier 121 b using a multiplicator of +3 when the clock signal CLK input to the control terminal S indicates a low level, that is, in the second half of one clock period.

[0062] Similarly, the multiplier 12-2 comprises two multipliers 122 a and 122 b in which values of multiplicator are fixed, and a selector 122 c as shown in FIG. 9. One multiplier 122 a performs a multiplying process using a multiplicator of +5, and the other multiplier 122 b performs a multiplying process using a multiplicator of −7. The selector 122 c receives the multiplication results of the two multipliers 122 a and 122 b, outputs a multiplication result obtained from one multiplier 122 a using a multiplicator of +5 when the clock signal CLK input to the control terminal S indicates a high level (in the first half of one clock period), and outputs a multiplication result obtained from the other multiplier 122 b using a multiplicator of −7 when the clock signal CLK input to the control terminal S indicates a low level (in the second half of one clock period).

[0063] As shown in FIG. 10, the multiplier 12-3 comprises two multipliers 123 a and 123 b in which multiplicator values are fixed, and a selector 123 c. One multiplier 123 a performs a multiplying process using a multiplicator of −7, and the other multiplier 123 b performs a multiplying process using a multiplicator of +5. The selector 123 c receives the multiplication results of the two multipliers 123 a and 123 b, outputs a multiplication result obtained from one multiplier 123 a using a multiplicator of −7 when the clock signal CLK input to the control terminal S indicates a high level (in the first half of one clock period), and outputs a multiplication result obtained from the other multiplier 123 b using amultiplicator of +5 when the clock signal CLK input to the control terminal S indicates a low level (in the second half of one clock period).

[0064] As shown in FIG. 11, the multiplier 12-4 comprises two multipliers 124 a and 124 b in which values of multiplicator are fixed, and a selector 124 c. One multiplier 124 a performs a multiplying process using a multiplicator of +3, and the other multiplier 124 b performs a multiplying process using a multiplicator of −1. The selector 124 c receives the multiplication results of the two multipliers 124 a and 124 b, outputs a multiplication result obtained from one multiplier 124 a using a multiplicator of +3 when the clock signal CLK input to the control terminal S indicates a high level (in the first half of one clock period), and outputs a multiplication result obtained from the other multiplier 124 b using a multiplicator of −1 when the clock signal CLK input to the control terminal S indicates a low level (in the second half of one clock period).

[0065] Thus, each multiplier performs a multiplying process using different multiplicators between the first half and the second half of one clock period.

[0066] The above mentioned four multipliers 12-1 through 12-4 use four multiplicator values of −1, +3, +5, and −7. When 1 is subtracted from each multiplier, they are −2, +2, +4, and −8, that is, the values of the power of 2. As a result, the multiplying processes using these values as multiplicators can be realized by a simple bit shift. Regarding these specific values as multiplicators of each multiplier according to the present embodiment, the configuration of each multiplier can be simplified.

[0067]FIGS. 12 through 15 show the configurations of the four simplified multipliers 12-1 through 12-4.

[0068] Themultiplier 12-1 comprises atri-state buffer 121 d having an inverting output terminal, a tri-state buffer 121 e having a non-inverting output terminal, and an adder (ADD) 121 f having two input terminals and carry terminal C as shown in FIG. 12.

[0069] When the clock signal CLK input to the control terminal indicates a high level (in the first half of one clock period), the tri-state buffer 121 d shifts the input data to a higher bit by one bit, and inverts and outputs each bit of the shifted data, thereby performing a multiplying process by a multiplicator of −2. Actually, by obtaining a complement by adding 1 after inverting each bit, a multiplying process can be performed using a multiplicator of −2. The process of adding 1 is performed by the adder 121 f at the subsequent stage.

[0070] Furthermore, when the clock signal inverted and input to the control terminal indicates a low level (in the second half of one clock period), the tri-state buffer 121 e shifts the input data to a higher bit by one bit, and outputs the data, thereby performing a multiplying process by a multiplicator of 2.

[0071] The adder 121 f adds the input data (the data output from the D flip-flop 10-1) before the multiplication to the multiplication result output from any of the two tri-state buffers 121 d and 121 e, and further adds 1 corresponding to the carry when the clock signal CLK input to the carry terminal C indicates a high level (in the first half of one clock period). As described above, the addition of 1 corresponding to the carry is performed to obtain a complement using the tri-state buffer 121 d.

[0072] Since the operation of only the tri-state buffer 121 d is valid in the first half of one clock period in the multiplier 12-1 with the above mentioned configuration, the adder 121 f outputs a sum (−2D+D=−D) obtained by adding the input data D to the multiplication result (−2D) obtained by multiplying the input data D by −2. In the second half of one clock period, since the operation of only the other tri-state buffer 121 e is valid, the adder 121 f outputs a sum (+2D+D=+3D) obtained by adding the input data D to the multiplication result (+2D) obtained by multiplying the input data D by +2.

[0073] Thus, by performing multiplying processes using multiplicators of −1 and +3 by combining the multiplying process of the exponentiation of 2 by a bit shift with the adding process, the multiplier 12-1 can be configured only by tri-state buffers and an adder, thereby simplifying the configuration. Especially, since the output of the two tri-state buffers is selectively used, the output terminals can be wired OR-connected, thereby furthermore simplifying the configuration.

[0074] In addition, the multiplier 12-2 comprises a tri-state buffer 122 d having a non-inverting output terminal, a tri-state buffer 122 e having an inverting output terminal, and an adder (ADD) 122 f having two input terminals and a carry terminal C as shown in FIG. 13.

[0075] When the clock signal input to the control terminal indicates ahigh level (in the first half of one clock period), the tri-state buffer 122 d shifts the input data to a higher bit by two bits, and outputs the shifted data, thereby performing a multiplying process by a multiplicator of +4.

[0076] When the clock signal CLK inverted and input to the control terminal indicates a low level (in the second half of one clock period), the tri-state buffer 122 e shifts and outputs the input data to a higher bit by three bits, and outputs the data after inverting each bit of the shifted data, thereby performing a multiplying process by a multiplicator of −8. Actually, by obtaining a complement by adding 1 after inverting each bit, a multiplying process can be performed using a multiplicator of −8. The process of adding 1 is performed by the adder 122 f at the subsequent stage.

[0077] The adder 122 f adds the input data before the multiplication to the multiplication result output from any of the two tri-state buffers 122 d and 122 e, and further adds 1 corresponding to the carry when the clock signal CLK inverted and input to the carry terminal C indicates a low level (in the second half of one clock period). As described above, the addition of 1 corresponding to the carry is performed to obtain a complement using the tri-state buffer 122 e.

[0078] Since the operation of only the tri-state buffer 122 d is valid in the first half of one clock period in the multiplier 12-2 with the above mentioned configuration, the adder 122 f outputs a sum (+4D+D=+5D) obtained by adding the input data D to the multiplication result (+4D) obtained by multiplying the input data D by +4. In the second half of one clock period, since the operation of only the other tri-state buffer 122 e is valid, the adder 122 f outputs a sum (−8D+D=−7D) obtained by adding the input data D to the multiplication result (−8D) obtained by multiplying the input data D by −8.

[0079] Thus, by performing multiplying processes using multiplicators of +5 and −7 by combining the multiplying process of the power of 2 by a bit shift with the adding process, the multiplier 12-2 can be configured only by tri-state buffers and an adder, thereby simplifying the configuration.

[0080] In addition, the multiplier 12-3 comprises a tri-state buffer 123 d having an inverting output terminal, a tri-state buffer 123 e having a non-inverting output terminal, and an adder (ADD) 123 f having two input terminals and a carry terminal C as shown in FIG. 14.

[0081] When the clock signal CLK inverted and input to the control terminal indicates a high level (in the first half of one clock period), the tri-state buffer 123 d shifts and outputs the input data to a higher bit by three bits, and outputs the data after inverting each bit of the shifted data, thereby performing a multiplying process by a multiplicator of −8. Actually, by obtaining a complement by adding 1 after inverting each bit, a multiplying process can be performed using a multiplicator of −8. The process of adding 1 is performed by the adder 123 f at the subsequent stage.

[0082] When the clock signal CLK inverted and input to the control terminal indicates a low level (in the second half of one clock period), the tri-state buffer 123 e shifts the input data to a higher bit by two bits, and outputs the shifted data, thereby performing a multiplying process by a multiplicator of +4.

[0083] The adder 123 f adds the input data before the multiplication to the multiplication result output from any of the two tri-state buffers 123 d and 123 e, and further adds 1 corresponding to the carry when the clock signal CLK input to the carry terminal C indicates a high level (in the first half of one clock period). As described above, the addition of 1 corresponding to the carry is performed to obtain a complement using the tri-state buffer 123 e.

[0084] Since the operation of only the tri-state buffer 123 d is valid in the first half of one clock period in the multiplier 12-3 with the above mentioned configuration, the adder 123 f outputs a sum (−8D+D=−7D) obtained by adding the input data D to the multiplication result (−8D) obtained by multiplying the input data D by −8. In the second half of one clock period, since the operation of only the other tri-state buffer 123 e is valid, the adder 123 f outputs a sum (+4D+D=+5D) obtained by adding the input data D to the multiplication result (+4D) obtained by multiplying the input data D by +4.

[0085] Thus, by performing multiplying processes using multiplicators of −7 and +5 by combining the multiplying process of the power of 2 by a bit shift with the adding process, the multiplier 12-3 can be configured only by tri-state buffers and an adder, thereby simplifying the configuration.

[0086] In addition, the multiplier 12-4 comprises a tri-state buffer 124 d having a non-inverting output terminal, a tri-state buffer 124 e having an inverting output terminal, and an adder (ADD) 124 f having two input terminals and a carry terminal C as shown in FIG. 15.

[0087] When the clock signal input to the control terminal indicates a high level (in the first half of one clock period), the tri-state buffer 124 d shifts the input data to a higher bit by one bit, and outputs the shifted data, thereby performing a multiplying process by a multiplicator of 2.

[0088] When the clock signal CLK inverted and input to the control terminal indicates a low level (in the second half of one clock period), the tri-state buffer 124 e shifts the input data to a higher bit by one bit, and outputs the data after inverting each bit of the shifted data, thereby performing a multiplying process by a multiplicator of −2. Actually, by obtaining a complement by adding 1 after inverting each bit, a multiplying process can be performed using a multiplicator of −2. The process of adding 1 is performed by the adder 124 f at the subsequent stage.

[0089] The adder 124 f adds the input data before the multiplication to the multiplication result output from any of the two tri- state buffers 124 d and 124 e, and further adds 1 corresponding to the carry when the clock signal CLK inverted and input to the carry terminal C indicates a low level (in the second half of one clock period). As described above, the addition of 1 corresponding to the carry is performed to obtain a complement using the tri-state buffer 124 e.

[0090] Since the operation of only the tri-state buffer 124 d is valid in the first half of one clock period in the multiplier 12-4 with the above mentioned configuration, the adder 124 f outputs a sum (+2D+D=+3D) obtained by adding the input data D to the multiplication result (+2D) obtained by multiplying the input data D by +2. In the second half of one clock period, since the operation of only the other tri-state buffer 124 e is valid, the adder 124 f outputs a sum (−2D+D=−D) obtained by adding the input data D to the multiplication result (−2D) obtained by multiplying the input data D by −2.

[0091] Thus, by performing multiplying processes using multiplicators of +3 and −1 by combining the multiplying process of the power of 2 by a bit shift with the adding process, the multiplier 12-4 can be configured only by tri-state buffers and an adder, thereby simplifying the configuration.

[0092] The present invention is not limited to the above mentioned embodiment, and various types of embodiments can be set within the scope of the gist of the present invention. For example, according to the above mentioned embodiment, a sampling function is defined as a function of local support differentiable only once in the whole range, but the times of differentiation can be set to a value equal to or larger than 2. In this case, the number of integrating circuits is to match the number of times of differentiation.

[0093] The sampling function of this embodiment converges to zero at t=±2, as shown in FIG. 1, but may converge to zero at t=±3 or beyond. For example, in a case of the sampling function converging to zero at t=±3, six D flip-flops and six multipliers may be contained in the D/A converter shown in FIG. 5, to generate an analog voltage connecting smoothly six digital data by performing an interpolation process for the digital data.

[0094] Furthermore, it is not limited to the interpolating process using a sampling function of local support, but using a sampling function differentiable finite times having a predetermined value in the range from −∞to +∞, an interpolation process may be performed only for plural digital data corresponding to finite sample position. For example, if such a sampling function is defined by a quadratic piecewise polynomial, a predetermined step function waveform can be obtained by differentiating each piecewise polynomial twice. A voltage is combined using this step function waveform, and a resulting voltage is integrated twice to get an analog signal connecting smoothly the voltages corresponding to the digital data.

INDUSTRIAL APPLICABILITY

[0095] As described above, according to the present invention, the multiplication results corresponding to sequentially input plural pieces of digital data are added up, and then the addition result is converted into an analog voltage and integrated, thereby obtaining continuously changing analog signals. As a result, it is not necessary to use a low pass filter to obtain a final analog signal, a group delay characteristic is not deteriorated by different phase characteristics depending on the applicable signal frequencies, and therefore an output waveform can be obtained with less distortion. As compared with the conventional method used with oversampling, the cost of parts can be reduced because it is not necessary to speed up the operations of the parts and to use expensive parts. 

1. A digital-to-analog converter, characterized by comprising: a plurality of data holding unit for holding plural pieces of digital data input at predetermined intervals; a plurality of multiplying unit for receiving said digital data held in each of said plurality of data holding unit, and performing a multiplying process using different multiplicators between a first half and a second half of a data holding period; an adding unit for performing a process of adding up multiplication results of said plurality of multiplying unit; a stepwise voltage waveform generation unit for generating a stepwise analog voltage corresponding to the digital data obtained by said adding unit; and an integrating unit for performing analog integration plural times on the analog voltage generated by said stepwise voltage waveform generation unit.
 2. The digital-to-analog converter according to claim 1, characterized in that each of the multiplicators used in the multiplying processes by said plurality of multiplying unit corresponds to each of the values of step functions obtained by differentiating plural times piecewise polynomials for a predetermined sampling function configured by the piecewise polynomials.
 3. The digital-to-analog converter according to claim 2, wherein said step function comprises a positive region and a negative region set to have an equal area.
 4. The digital-to-analog converter according to claim 3, wherein said sampling function is differentiable only once over the whole range and has values of local support.
 5. The digital-to-analog converter according to claim 2, characterized in that said step function consists of eight piecewise sections in equal width with a weight of −1, +3, +5, −7, −7, +5, +3, and −1 in a predetermined range corresponding to said five digital data arranged at an equal interval, and that every two of the eight weight coefficients are set as the multiplicators in each of said plurality of multiplying unit.
 6. The digital-to-analog converter according to claim 5, characterized in that a multiplying process performed in each of said plurality of multiplying unit is realized by adding said digital data to an operation result of an exponentiation of 2 by a bit shift.
 7. The digital-to-analog converter according to claim 1, characterized in that times of said analog integration is two, and an analog signal whose voltage level changes like a quadric function is output from said integrating unit. 